//
//
//
//
//
// ActiveObject.h
//

#ifndef ACTIVE_OBJECT_H_
#define ACTIVE_OBJECT_H_

#include <pthread.h>

class ActiveObject
{
	public:
		ActiveObject();
		virtual ~ActiveObject();
		
		void Start(void);
		void Wait(void);
		virtual void Svc(void) = 0;
		virtual void ForceStop(void) = 0;
	protected:
		static void* ThreadEntry(void*);

		pthread_t _threadID;
};

#endif // ACTIVE_OBJECT_H_
